package com.sc.VenusQueryBeta.contract.account.zhuanma;

import com.hengjun.kingstar.sdk.base.BasePresenter;
import com.hengjun.kingstar.sdk.base.IBaseActivity;
import com.hengjun.kingstar.sdk.base.IBaseModel;
import com.sc.VenusQueryBeta.model.bean.account.AccountList;
import com.sc.VenusQueryBeta.model.bean.account.AllRoomListBean;
import com.sc.VenusQueryBeta.model.bean.account.CurrencyListBean;
import com.sc.VenusQueryBeta.model.bean.account.MaxChangemonthBean;

import io.reactivex.Observable;


/**
 * Created by SC-02 on 2018/9/19.
 *  转码明细Contract(契约)接口
 */
public interface ZhuanMaContract {
    abstract class ZhuanMaPresenter extends BasePresenter<IZhuanMaModel,IZhuanMaView>{
       //查询厅(根据账房那边排序)
//        public abstract void queryAllRoomList(String serverAddress, String projectName, int serverPort);

        //查询币种
        public abstract void  queryCurrencyList(String serverAddress, String projectName, int serverPort);

        //查询子户口
//        public abstract void queryClientReserved02(String serverAddress, String projectName, int serverPort,int clientindex, String roomyear,
//                                                   String roommonth,String recognitionValue,String depositType,int chiptype);
        public abstract void queryClientReserved02(String serverAddress, String projectName, int serverPort,int clientindex, String roomyear,
                                                   String roommonth,String recognitionValue,String depositType,String currencynameCN);

      //查询最大日期
//        public abstract void queryMaxChangemonth(String serverAddress, String projectName, int serverPort, int roomid);
    }
    interface IZhuanMaModel extends IBaseModel{
       //查询厅(根据账房那边排序)
//        Observable<AllRoomListBean> queryAllRoomList(String serverAddress, String projectName, int serverPort);

        //查询币种
        Observable<CurrencyListBean> queryCurrencyList(String serverAddress, String projectName, int serverPort);

        //查询子户口
//        Observable<AccountList> queryZiHuList(String serverAddress, String projectName, int serverPort, int clientindex,  String roomyear,
//                                              String roommonth, String recognitionValue, String depositType, int chiptype);
        Observable<AccountList> queryZiHuList(String serverAddress, String projectName, int serverPort, int clientindex,  String roomyear,
                                              String roommonth, String recognitionValue, String depositType,String currencynameCN);

        //查询最大日期
//        Observable<MaxChangemonthBean> queryMaxChangemonth(String serverAddress, String projectName, int serverPort, int roomid);
    }
    interface IZhuanMaView extends IBaseActivity{

        void showNetworkError(Throwable throwable);
        //查询厅(根据账房那边排序)
//        void showqueryAllRoomList(AllRoomListBean allRoomListBean);
        //子戶口
        void showZiHuKouList(AccountList accountListBean);
        //最大日期
//        void showMaxChangemonthList(MaxChangemonthBean allRoomListBean);

        //查询币种列表
        void showqueryCurrencyList(CurrencyListBean currencyListBean);

        void showAllRoomNetworkError(Throwable throwable);
    }
}
